package com.erp.erp_servers.warehouse;

import com.erp.erp_entitys.warehouse.entity.OtherOutStockDetailEntity;
import com.erp.erp_entitys.warehouse.req.sellOutStockStatistics1Req;
import com.erp.erp_entitys.warehouse.rsp.OtherOutStockProductStatisticsRsp;

import java.util.List;

/**
 * @ClassName : IOtherOutStockDetailService
 * @Description : 其它出库明细接口
 * @Author : lst
 * @Date: 2020-07-29 12:09
 */
public interface IOtherOutStockDetailService {

    /**
     * 通过id查询
     * @param id 主键id
     * @return 其它出库明细对象
     */
    OtherOutStockDetailEntity queryById(Integer id);

    /**
     * 通过实体作为筛选条件查询
     *
     * @param otherOutStockDetail 实例对象
     * @return 对象列表
     */
    List<OtherOutStockDetailEntity> queryAll(OtherOutStockDetailEntity otherOutStockDetail);

    /**
     * 新增数据
     *
     * @param otherOutStockDetail 实例对象
     * @return 影响行数
     */
    int insert(OtherOutStockDetailEntity otherOutStockDetail);

    /**
     * 其它出库详情批量新增
     * @param list 新增对象集合
     * @return 影响行数
     */
    int addList(List<OtherOutStockDetailEntity> list);

    /**
     * 修改
     * @param detailEntity
     * @return
     */
    int update(OtherOutStockDetailEntity detailEntity);

    /**
     * 其它出库产品统计
     * @param req 查询条件
     * @return 其它出库产品统计
     */
    List<OtherOutStockProductStatisticsRsp> statisticsProductInfo(sellOutStockStatistics1Req req);
}
